package ywpt.service.config;

import java.util.List;

import org.hibernate.criterion.DetachedCriteria;

import ywpt.model.ContractType;

public interface ContractTypeService {
	
	public abstract int getContractTypesCountByName(String typeName,Long classId);
	
	public abstract List<ContractType> getContractTypesByTypeName(String typeName,Long classId, int start, int size);

	public abstract List<ContractType> getContractTypes(DetachedCriteria query);
	
	int getContractTypeCountByCriteria(DetachedCriteria query);
	
	public abstract List<ContractType> getContractTypes(DetachedCriteria query,int pageSize, int startIndex);

	public abstract String CreateTypeCode( );

	public abstract ContractType getContractTypeById(Long id);

	public abstract void saveContractType(ContractType contractType);

	public abstract void updateContractType(ContractType contractType);

	public abstract void removeContractType(Long id);
	
	public abstract List<Long> getClassGroup();
		
}
